package com.example.service;

import com.example.entity.StatsDTO;
import com.example.mapper.BlogMapper;
import com.example.mapper.CommentMapper;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

@Service
public class StatsService {
    @Resource
    private BlogMapper blogMapper;
    @Resource
    private CommentMapper commentMapper;

//    public StatsDTO getStats() {
//        StatsDTO stats = new StatsDTO();
//        stats.setBlogCount(blogMapper.countBlogs());
//        stats.setCommentCount(commentMapper.countComments());
//        stats.setTotalReadCount(blogMapper.sumReadCount());
//        stats.setDailyBlogs(blogMapper.countBlogsByDate());
//        return stats;
//    }

    public StatsDTO getStats() {
        // 创建 StatsDTO 对象用于封装统计结果
        StatsDTO stats = new StatsDTO();
        // 获取博客总数
        stats.setBlogCount(blogMapper.countBlogs());
        // 获取评论总数
        stats.setCommentCount(commentMapper.countComments());
        // 获取所有博客的总阅读量
        stats.setTotalReadCount(blogMapper.sumReadCount());
        // 获取每日博客发布趋势
        stats.setDailyBlogs(blogMapper.countBlogsByDate());
        // 返回封装好的统计结果
        return stats;
    }

}
